/*
 * Copyright (c) 2021 Oracle and/or its affiliates.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Defines the Helidon metrics API so Helidon metrics-capable components can implement metrics simply and without regard for
 * whether metrics is actually on the runtime path or not or is enabled or not.
 <p>
 *     The registry factories created and used at runtime are managed by a {@link io.helidon.metrics.api.spi.RegistryFactoryProvider}.
 *     This module provides one implementation ({@link io.helidon.metrics.api.NoOpRegistryFactory} which returns {@code
 *     RegistryFactory} instances which create no-op metrics. If the regular metrics implementation component is on the path at
 *     runtime, then the {@code RegistryFactoryProvider} furnished by that component will create fully functional registry
 *     factories.
 * </p>
 */
package io.helidon.metrics.api;
